package cn.iocoder.yudao.module.ym.controller.admin.site.vo;

import com.alibaba.excel.annotation.ExcelProperty;
import lombok.*;
import java.util.*;
import io.swagger.v3.oas.annotations.media.Schema;
import cn.iocoder.yudao.framework.common.pojo.PageParam;
import java.math.BigDecimal;
import org.springframework.format.annotation.DateTimeFormat;
import java.time.LocalDateTime;
import java.time.LocalTime;
import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;
@Schema(description = "管理后台 - 电站分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class SitePageReqVO extends PageParam {
    @Schema(description = "ids", example = "你说的对")
    private Collection<Long> ids;

    @Schema(description = "备注", example = "你说的对")
    private String remark;

    @Schema(description = "公司ID", example = "14721")
    private Long deptId;

    @Schema(description = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

    @Schema(description = "更新时间时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] updateTime;

    @Schema(description = "区域", example = "15889")
    private Long areaId;
    private List<Long> areaIdList;

    private Long userId;

    @Schema(description = "电站名称", example = "李四")
    private String siteName;

    @Schema(description = "电站编号")
    private String siteCode;

    @Schema(description = "电站地址")
    private String location;

    @Schema(description = "中心经纬度")
    private String latitudeLongitude;

    @Schema(description = "坐标集合")
    private String coordinates;

    @Schema(description = "经度")
    private String lon;

    @Schema(description = "当前经度")
    private Double nowLon;

    @Schema(description = "纬度")
    private String lat;

    @Schema(description = "当前纬度")
    private Double nowLat;

    @Schema(description = "距离")
    private Long dis;

    @Schema(description = "运营平台")
    private Integer operationPlatform;
    private List<Integer> operationPlatformList;

    @Schema(description = "设备品牌")
    private Integer deviceBrand;

    private List<Integer> deviceBrandList;

    @Schema(description = "设备类型", example = "2")
    private Integer deviceType;

    private List<Integer> deviceTypeList;

    @Schema(description = "快充终端数")
    private Integer fastNum;

    @Schema(description = "慢充终端数")
    private Integer slowNum;

    @Schema(description = "管理员名字", example = "芋艿")
    private String adminName;

    @Schema(description = "管理员电话")
    private String adminPhone;

    @Schema(description = "月巡检次数")
    private Integer inspectionCount;

    @Schema(description = "电站状态", example = "1")
    private Integer siteStatus;

    private List<Integer> siteStatusList;

    @Schema(description = "配套")
    private String supportingFacilities;

    @Schema(description = "运营类型", example = "1")
    private Integer operationType;

    private List<Integer> operationTypeList;

    @Schema(description = "电费")
    private String electricityBill;

    @Schema(description = "服务费")
    private String serviceFee;

    @Schema(description = "运营时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] onlineDate;

    @Schema(description = "账面投资额")
    private String investmentAmt;

    @Schema(description = "总功率")
    private String totalPower;

    @Schema(description = "分成/租金")
    private String shareRent;

    @Schema(description = "到期时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] expirationDate;

    @Schema(description = "客户名称", example = "王五")
    private String clientName;

    @Schema(description = "负责人", example = "张三")
    private String leaderName;

    @Schema(description = "负责人电话")
    private String leaderPhone;

    @Schema(description = "场地年限")
    private String siteTenure;

    @Schema(description = "商圈类别")
    private Integer businessCategory;

    @Schema(description = "电站亏损原因")
    private Integer stationLoss;

    @Schema(description = "电站icon")
    private String siteIcon;

    @Schema(description = "电站图片")
    private String siteImages;

    @Schema(description = "营业开始时间")
    private LocalTime operatingStart;

    @Schema(description = "营业结束时间")
    private LocalTime operatingEnd;

    @Schema(description = "安装时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] installationTime;

    @Schema(description = "电站类型", example = "2")
    private Integer siteType;

    private List<Integer> siteTypeList;

    @Schema(description = "所属公司")
    private String company;

    @Schema(description = "是否改扩建")
    private Integer expansion;

    @Schema(description = "改扩建详情")
    private String expansionDetail;

    @Schema(description = "改扩建进度")
    private String expansionProgress;

    @Schema(description = "状态", example = "1")
    private Integer status;

    @Schema(description = "保密图片")
    private String secretImage;

    @Schema(description = "组合搜索")
    private String combinedSearch;

    @Schema(description = "剩余年限")
    private Integer yearsLeft;

    @Schema(description = "商机时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] businessTime;

}
